﻿using AutoMapper;
using JTTD.DataBase.Model.Activity;
using JTTD.DataBase.Model.CompanyBill;
using JTTD.DataBase.Model.CompanyUserInfo;
using JTTD.DataBase.Model.Coupon;
using JTTD.DataBase.Model.Integral;
using JTTD.DataBase.Model.ShopActivity;
using JTTD.DataBase.Model.ShopCoupon;
using JTTD.DataBase.Model.System;
using JTTD.DataBase.Model.UserInfo;
using JTTD.Domain.Dtos.Activity.Request;
using JTTD.Domain.Dtos.Activity.Response;
using JTTD.Domain.Dtos.CompanyBill.Request;
using JTTD.Domain.Dtos.CompanyBill.Response;
using JTTD.Domain.Dtos.CompanyUserInfo.Request;
using JTTD.Domain.Dtos.CompanyUserInfo.Response;
using JTTD.Domain.Dtos.Coupon.Response;
using JTTD.Domain.Dtos.Integral.Response;
using JTTD.Domain.Dtos.ShopActivity.Request;
using JTTD.Domain.Dtos.ShopActivity.Response;
using JTTD.Domain.Dtos.ShopCoupon.Response;
using JTTD.Domain.Dtos.System.Request;
using JTTD.Domain.Dtos.System.Response;
using JTTD.Domain.Dtos.UserInfo.Response;

namespace JTTD.Domain
{
    /// <summary>
    /// 
    /// </summary>
    public class AutoMapperConfigs : Profile
    {
        /// <summary>
        /// 
        /// </summary>
        public AutoMapperConfigs()
        {
            #region 积分规则
            CreateMap<IntrgralRecordModel, IntrgralRecordResponseDto>();
            CreateMap<IntegralApplyModel, IntegralApplyResponseDto>();
            #endregion 积分规则

            #region 商城活动
            CreateMap<ActivityInfoModel, ActivityInfoResponseDto>();
            CreateMap<ShopActivityJoinUserModel, ActivityJoinUserResponseDto>();
            CreateMap<ActivityInfoResponseDto, ActivityInfoModel>();
            CreateMap<ActivityJoinUserResponseDto, ShopActivityJoinUserModel>();
            CreateMap<SetActivityRequestDto, ActivityInfoModel>();
            #endregion

            #region 优惠券
            CreateMap<CouponInfoModel, CouponInfoResponseDto>();
            CreateMap<CouponInfoResponseDto, CouponInfoModel>();
            #endregion 优惠券

            #region 系统配置
            CreateMap<ConfigInfoModel, ConfigInfoResponseDto>();
            CreateMap<ConfigInfoResponseDto, ConfigInfoModel>();
            CreateMap<SetConfigRequestDto, ConfigInfoModel>();
            #endregion

            #region 用户信息
            CreateMap<UserInfoModel, UserInfoResponseDto>();
            CreateMap<UserInfoResponseDto, UserInfoModel>();
            #endregion

            #region 商户信息
            CreateMap<CompanyUserInfoModel, GetCompanyUserInfoDto>();
            CreateMap<CompanyUserInfoModel, GetShopUserDto>();
            CreateMap<UpdateShopInfoRequestDto, CompanyUserInfoModel>();
            CreateMap<CompanyUserInfoModel, InsertCompanyUserInfoRequestDto>();
            CreateMap<InsertCompanyUserInfoRequestDto, CompanyUserInfoModel>();
            #endregion

            #region 店铺活动
            CreateMap<ShopActivityInfoModel, ShopActivityInfoResponseDto>();
            CreateMap<ShopActivityInfoResponseDto, ShopActivityInfoModel>();
            CreateMap<SetShopActivityRequestDto, ShopActivityInfoModel>();
            #endregion

            CreateMap<ShopCouponInfoModel, ShopCouponResponseDto>();

            #region 店铺账单
            CreateMap<CompanyBillModel, CompanyBillResponseDto>();
            CreateMap<CompanyBillResponseDto, CompanyBillModel>();
            CreateMap<SetCompanyBillRequestDto, CompanyBillModel>();
            #endregion
        }
    }
}
